package com.css.openapi.BO.fxdw;


import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.time.LocalDate;

/**
 * @description: 支付凭证BO
 * @Title: ZfpzxxBO
 * @Author xlw
 * @Package com.invoice.tcc.BO.fxdw
 * @Date 2024/11/19 15:31
 */
@NoArgsConstructor
@Data
public class ZfpzxxBO {


    /**
     * 支付渠道
     * 001：现金
     * 002：银行转账
     * 003：票据
     * 004：借记卡
     * 005：信用卡
     * 006：购物卡/券
     * 007：优惠券
     * 008：商场积分
     * 009：支付宝
     * 010：微信支付
     * 011：云闪付
     * 012：Apple Pay
     * 013：Samsung Pay
     * 099：其他
     */
    //@NotBlank(message = "支付渠道不能为空")
    private String zzqd;

    /**
     * 平台交易单号(支付订单号)
     */
    @NotBlank(message = "平台交易单号不能为空")
    private String jylsh;

    /**
     * 批次流水号
     */
    @NotBlank(message = "批次流水号不能为空")
    private String pcjylsh;

    /**
     * 交易日期
     */
    @JsonFormat(pattern = "yyyyMMdd")
    private LocalDate jyrq;

    /**
     * 转账金额
     */
    @NotNull(message = "转账金额不能为空")
    private BigDecimal zzje;

    /**
     * 付款方银行名称
     */
    @NotBlank(message = "付款方银行名称不能为空")
    private String fkfyhmc;

    /**
     * 付款方银行账号
     */
    @NotBlank(message = "付款方银行账号不能为空")
    private String fkfyhzh;

    /**
     * 付款方银行编码
     */
    @NotBlank(message = "付款方银行编码不能为空")
    private String fkfyhbm;

    /**
     * 收款方银行名称
     */
    @NotBlank(message = "收款方银行名称不能为空")
    private String skfyhmc;

    /**
     * 收款方银行账号
     */
    @NotBlank(message = "收款方银行账号不能为空")
    private String skfyhzh;
}
